Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Displaying Raw • Download


android/app/build.gradle 83db6cedfdaa3b8b484d0069d20fea9727b7bae6 (83db6ced) Text, 6.98 KB

Te6edf3plugins Tff7b72{
Te6edf3id Ta5d6ff'com.android.application'
Te6edf3id Ta5d6ff'com.chaquo.python'
Tff7b72}

Tffa657def Te6edf3repoRoot Tff7b72= Te6edf3rootProjectTff7b72.Td2a8ffprojectDirTff7b72.Td2a8ffparentFile
Tffa657def Te6edf3meshchatSourceDir Tff7b72= Tff7b72new Te6edf3FileTff7b72(Te6edf3repoRootTff7b72, Ta5d6ff"meshchatx"Tff7b72)
Tffa657def Te6edf3repositoryBundledWheelsDir Tff7b72= Tff7b72new Te6edf3FileTff7b72(Te6edf3meshchatSourceDirTff7b72, Ta5d6ff"public/repository-server-bundled/bundled"Tff7b72)
Tffa657def Te6edf3chaquopyBuildPython Tff7b72= Te6edf3SystemTff7b72.Td2a8ffgetenvTff7b72(Ta5d6ff"CHAQUOPY_BUILD_PYTHON"Tff7b72)
Tffa657def Te6edf3pythonTempDir Tff7b72= Tff7b72new Te6edf3FileTff7b72(Te6edf3buildDirTff7b72, Ta5d6ff"python-tmp"Tff7b72)
Tffa657def Te6edf3vendorWheelDir Tff7b72= Tff7b72new Te6edf3FileTff7b72(Te6edf3rootProjectTff7b72.Td2a8ffprojectDirTff7b72, Ta5d6ff"vendor"Tff7b72)
Tffa657def Te6edf3lxstPatchedWheel Tff7b72= Tff7b72new Te6edf3FileTff7b72(Te6edf3rootProjectTff7b72.Td2a8ffprojectDirTff7b72, Ta5d6ff"vendor/lxst-0.4.6-py3-none-any.whl"Tff7b72)
Tffa657def Te6edf3allAndroidAbis Tff7b72= Tff7b72[Ta5d6ff"arm64-v8a"Tff7b72, Ta5d6ff"x86_64"Tff7b72, Ta5d6ff"armeabi-v7a"Tff7b72]
Tffa657def Te6edf3selectedAndroidAbis Tff7b72= Tff7b72(
Te6edf3projectTff7b72.Td2a8fffindPropertyTff7b72(Ta5d6ff"meshchatxAbis"Tff7b72)
Tff7b72?Tff7b72: Te6edf3SystemTff7b72.Td2a8ffgetenvTff7b72(Ta5d6ff"MESHCHATX_ABIS"Tff7b72)
Tff7b72?Tff7b72: Te6edf3allAndroidAbisTff7b72.Td2a8ffjoinTff7b72(Ta5d6ff","Tff7b72)
Tff7b72)Tff7b72.Td2a8ffsplitTff7b72(Ta5d6ff","Tff7b72)Tff7b72.Td2a8ffcollect Tff7b72{ Te6edf3itTff7b72.Td2a8fftrimTff7b72(Tff7b72) Tff7b72}Tff7b72.Td2a8fffindAll Tff7b72{ Te6edf3it Tff7b72}

Tff7b72if Tff7b72(Te6edf3selectedAndroidAbisTff7b72.Td2a8ffisEmptyTff7b72(Tff7b72)Tff7b72) Tff7b72{
Tff7b72throw Tff7b72new Te6edf3orgTff7b72.Td2a8ffgradleTff7b72.Td2a8ffapiTff7b72.Td2a8ffGradleExceptionTff7b72(Ta5d6ff"No Android ABIs selected. Use -PmeshchatxAbis or MESHCHATX_ABIS."Tff7b72)
Tff7b72}
Tffa657def Te6edf3invalidAndroidAbis Tff7b72= Te6edf3selectedAndroidAbisTff7b72.Td2a8fffindAll Tff7b72{ Tff7b72!Te6edf3allAndroidAbisTff7b72.Td2a8ffcontainsTff7b72(Te6edf3itTff7b72) Tff7b72}
Tff7b72if Tff7b72(Tff7b72!Te6edf3invalidAndroidAbisTff7b72.Td2a8ffisEmptyTff7b72(Tff7b72)Tff7b72) Tff7b72{
Tff7b72throw Tff7b72new Te6edf3orgTff7b72.Td2a8ffgradleTff7b72.Td2a8ffapiTff7b72.Td2a8ffGradleExceptionTff7b72(Ta5d6ff"Unsupported ABIs: ${invalidAndroidAbis}. Supported: ${allAndroidAbis}"Tff7b72)
Tff7b72}

Tffa657def Te6edf3meshchatxAbiPackaging Tff7b72= Tff7b72(
Te6edf3projectTff7b72.Td2a8fffindPropertyTff7b72(Ta5d6ff"meshchatxAbiPackaging"Tff7b72)
Tff7b72?Tff7b72: Te6edf3SystemTff7b72.Td2a8ffgetenvTff7b72(Ta5d6ff"MESHCHATX_ABI_PACKAGING"Tff7b72)
Tff7b72?Tff7b72: Ta5d6ff"universal"
Tff7b72)Tff7b72.Td2a8fftoStringTff7b72(Tff7b72)Tff7b72.Td2a8fftrimTff7b72(Tff7b72)Tff7b72.Td2a8fftoLowerCaseTff7b72(Tff7b72)
Tff7b72if Tff7b72(Te6edf3meshchatxAbiPackaging Tff7b72!Tff7b72= Ta5d6ff"universal" Tff7b72&Tff7b72& Te6edf3meshchatxAbiPackaging Tff7b72!Tff7b72= Ta5d6ff"split"Tff7b72) Tff7b72{
Tff7b72throw Tff7b72new Te6edf3orgTff7b72.Td2a8ffgradleTff7b72.Td2a8ffapiTff7b72.Td2a8ffGradleExceptionTff7b72(
Ta5d6ff"meshchatxAbiPackaging must be 'universal' or 'split' (got '${meshchatxAbiPackaging}'). " Tff7b72+
Ta5d6ff"Use -PmeshchatxAbiPackaging=... or MESHCHATX_ABI_PACKAGING."
Tff7b72)
Tff7b72}
Tffa657def Te6edf3enableAbiSplits Tff7b72= Te6edf3meshchatxAbiPackaging Tff7b72=Tff7b72= Ta5d6ff"split" Tff7b72&Tff7b72& Te6edf3selectedAndroidAbisTff7b72.Td2a8ffsizeTff7b72(Tff7b72) Tff7b72> T79c0ff1

Te6edf3android Tff7b72{
Te6edf3namespace Ta5d6ff'com.meshchatx'
Te6edf3compileSdk T79c0ff35

Te6edf3defaultConfig Tff7b72{
Te6edf3applicationId Ta5d6ff"com.meshchatx"
Te6edf3minSdk T79c0ff24
Te6edf3targetSdk T79c0ff35
Te6edf3versionCode T79c0ff46002
Te6edf3versionName Ta5d6ff"4.6.2"

Te6edf3testInstrumentationRunner Ta5d6ff"androidx.test.runner.AndroidJUnitRunner"
Te6edf3ndk Tff7b72{
Te6edf3abiFiltersTff7b72(Tff7b72*Te6edf3selectedAndroidAbis Tff7b72as Te6edf3StringTff7b72[Tff7b72]Tff7b72)
Tff7b72}
Tff7b72}

Te6edf3splits Tff7b72{
Te6edf3abi Tff7b72{
Te6edf3enable Te6edf3enableAbiSplits
Te6edf3resetTff7b72(Tff7b72)
Tff7b72if Tff7b72(Te6edf3enableAbiSplitsTff7b72) Tff7b72{
Te6edf3includeTff7b72(Tff7b72*Te6edf3selectedAndroidAbis Tff7b72as Te6edf3StringTff7b72[Tff7b72]Tff7b72)
Tff7b72}
Te6edf3universalApk Te6edf3enableAbiSplits
Tff7b72}
Tff7b72}

Te6edf3buildTypes Tff7b72{
Te6edf3release Tff7b72{
Te6edf3minifyEnabled Tff7b72true
Te6edf3shrinkResources Tff7b72true
Te6edf3proguardFiles Te6edf3getDefaultProguardFileTff7b72(Ta5d6ff'proguard-android-optimize.txt'Tff7b72)Tff7b72, Ta5d6ff'proguard-rules.pro'
Tff7b72}
Tff7b72}

Te6edf3compileOptions Tff7b72{
Te6edf3sourceCompatibility Te6edf3JavaVersionTff7b72.Td2a8ffVERSION_1_8
Te6edf3targetCompatibility Te6edf3JavaVersionTff7b72.Td2a8ffVERSION_1_8
Tff7b72}

Te6edf3packagingOptions Tff7b72{
Te6edf3jniLibs Tff7b72{
Te6edf3useLegacyPackaging Tff7b72= Tff7b72true
Tff7b72}
Tff7b72}

Te6edf3lint Tff7b72{
Te6edf3abortOnError Tff7b72true
Te6edf3checkReleaseBuilds Tff7b72false
Tff7b72}
Tff7b72}

Te6edf3tasksTff7b72.Td2a8ffregisterTff7b72(Ta5d6ff"fetchRepositoryBundledWheels"Tff7b72, Te6edf3ExecTff7b72) Tff7b72{
Te6edf3workingDir Tff7b72= Te6edf3repoRoot
Tffa657def Te6edf3pyExe Tff7b72= Tff7b72(Te6edf3SystemTff7b72.Td2a8ffgetenvTff7b72(Ta5d6ff"MESHCHATX_FETCH_PYTHON"Tff7b72) Tff7b72?Tff7b72: Ta5d6ff"python3"Tff7b72)
Te6edf3commandLineTff7b72(Te6edf3pyExeTff7b72, Ta5d6ff"scripts/build/fetch_repository_wheels.py"Tff7b72)
Te6edf3ignoreExitValue Tff7b72= Tff7b72false
Te6edf3onlyIf Tff7b72{
Tff7b72if Tff7b72(Te6edf3SystemTff7b72.Td2a8ffgetenvTff7b72(Ta5d6ff"MESHCHATX_SKIP_REPOSITORY_WHEELS_FETCH"Tff7b72) Tff7b72=Tff7b72= Ta5d6ff"1"Tff7b72) Tff7b72{
Tff7b72return Tff7b72false
Tff7b72}
Tff7b72if Tff7b72(Tff7b72!Te6edf3repositoryBundledWheelsDirTff7b72.Td2a8ffisDirectoryTff7b72(Tff7b72)Tff7b72) Tff7b72{
Tff7b72return Tff7b72true
Tff7b72}
Tffa657def Te6edf3names Tff7b72= Te6edf3repositoryBundledWheelsDirTff7b72.Td2a8fflistTff7b72(Tff7b72)
Tff7b72return Te6edf3names Tff7b72=Tff7b72= Tff7b72null Tff7b72|Tff7b72| Tff7b72!Te6edf3namesTff7b72.Td2a8ffany Tff7b72{ Te6edf3itTff7b72.Td2a8ffendsWithTff7b72(Ta5d6ff".whl"Tff7b72) Tff7b72}
Tff7b72}
Tff7b72}

Te6edf3tasksTff7b72.Td2a8ffregisterTff7b72(Ta5d6ff"syncMeshchatPython"Tff7b72, Te6edf3SyncTff7b72) Tff7b72{
Te6edf3dependsOnTff7b72(Ta5d6ff"fetchRepositoryBundledWheels"Tff7b72)
Tff7b72if Tff7b72(Tff7b72!Te6edf3meshchatSourceDirTff7b72.Td2a8ffexistsTff7b72(Tff7b72)Tff7b72) Tff7b72{
Tff7b72throw Tff7b72new Te6edf3orgTff7b72.Td2a8ffgradleTff7b72.Td2a8ffapiTff7b72.Td2a8ffGradleExceptionTff7b72(Ta5d6ff"Missing meshchatx source directory at ${meshchatSourceDir}"Tff7b72)
Tff7b72}
Te6edf3doFirst Tff7b72{
Te6edf3deleteTff7b72(
Te6edf3fileTff7b72(Ta5d6ff"$projectDir/src/main/python/meshchatx"Tff7b72)Tff7b72,
Te6edf3fileTff7b72(Ta5d6ff"$projectDir/src/main/python/LXST"Tff7b72)Tff7b72,
Te6edf3fileTff7b72(Ta5d6ff"$projectDir/src/main/python/LXMF"Tff7b72)Tff7b72,
Te6edf3fileTff7b72(Ta5d6ff"$projectDir/src/main/python/RNS"Tff7b72)
Tff7b72)
Tff7b72}
Te6edf3fromTff7b72(Te6edf3meshchatSourceDirTff7b72)
Te6edf3includeEmptyDirs Tff7b72= Tff7b72false
Te6edf3fromTff7b72(Tff7b72new Te6edf3FileTff7b72(Te6edf3repoRootTff7b72, Ta5d6ff"CHANGELOG.md"Tff7b72)Tff7b72)
Te6edf3intoTff7b72(Te6edf3fileTff7b72(Ta5d6ff"$projectDir/src/main/python/meshchatx"Tff7b72)Tff7b72)
Tff7b72}

Te6edf3tasksTff7b72.Td2a8ffconfigureEach Tff7b72{ Te6edf3task Tff7b72-Tff7b72>
Tff7b72if Tff7b72(Te6edf3taskTff7b72.Td2a8ffnameTff7b72.Td2a8fftoLowerCaseTff7b72(Tff7b72)Tff7b72.Td2a8ffcontainsTff7b72(Ta5d6ff"merge"Tff7b72) Tff7b72&Tff7b72& Te6edf3taskTff7b72.Td2a8ffnameTff7b72.Td2a8fftoLowerCaseTff7b72(Tff7b72)Tff7b72.Td2a8ffcontainsTff7b72(Ta5d6ff"pythonsources"Tff7b72)Tff7b72) Tff7b72{
Te6edf3taskTff7b72.Td2a8ffdependsOnTff7b72(Te6edf3tasksTff7b72.Td2a8ffnamedTff7b72(Ta5d6ff"syncMeshchatPython"Tff7b72)Tff7b72)
Tff7b72}
Tff7b72}

Te6edf3tasksTff7b72.Td2a8ffconfigureEach Tff7b72{ Te6edf3task Tff7b72-Tff7b72>
Tff7b72if Tff7b72(Te6edf3taskTff7b72.Td2a8ffnameTff7b72.Td2a8fftoLowerCaseTff7b72(Tff7b72)Tff7b72.Td2a8ffcontainsTff7b72(Ta5d6ff"python"Tff7b72)Tff7b72) Tff7b72{
Te6edf3taskTff7b72.Td2a8ffdoFirst Tff7b72{
Tff7b72if Tff7b72(Tff7b72!Te6edf3pythonTempDirTff7b72.Td2a8ffexistsTff7b72(Tff7b72)Tff7b72) Tff7b72{
Te6edf3pythonTempDirTff7b72.Td2a8ffmkdirsTff7b72(Tff7b72)
Tff7b72}
Tff7b72if Tff7b72(Te6edf3taskTff7b72.Td2a8ffmetaClassTff7b72.Td2a8ffrespondsToTff7b72(Te6edf3taskTff7b72, Ta5d6ff"environment"Tff7b72, Te6edf3StringTff7b72, Te6edf3ObjectTff7b72)Tff7b72) Tff7b72{
Te6edf3taskTff7b72.Td2a8ffenvironmentTff7b72(Ta5d6ff"TMPDIR"Tff7b72, Te6edf3pythonTempDirTff7b72.Td2a8ffabsolutePathTff7b72)
Te6edf3taskTff7b72.Td2a8ffenvironmentTff7b72(Ta5d6ff"TEMP"Tff7b72, Te6edf3pythonTempDirTff7b72.Td2a8ffabsolutePathTff7b72)
Te6edf3taskTff7b72.Td2a8ffenvironmentTff7b72(Ta5d6ff"TMP"Tff7b72, Te6edf3pythonTempDirTff7b72.Td2a8ffabsolutePathTff7b72)
Tff7b72}
Tff7b72}
Tff7b72}
Tff7b72}

Te6edf3chaquopy Tff7b72{
Te6edf3defaultConfig Tff7b72{
Te6edf3version Ta5d6ff"3.11"

Tff7b72if Tff7b72(Te6edf3chaquopyBuildPython Tff7b72!Tff7b72= Tff7b72null Tff7b72&Tff7b72& Tff7b72!Te6edf3chaquopyBuildPythonTff7b72.Td2a8fftrimTff7b72(Tff7b72)Tff7b72.Td2a8ffisEmptyTff7b72(Tff7b72)Tff7b72) Tff7b72{
Te6edf3buildPython Te6edf3chaquopyBuildPython
Tff7b72}

Te6edf3pip Tff7b72{
Tff7b72if Tff7b72(Tff7b72!Te6edf3vendorWheelDirTff7b72.Td2a8ffexistsTff7b72(Tff7b72)Tff7b72) Tff7b72{
Tff7b72throw Tff7b72new Te6edf3orgTff7b72.Td2a8ffgradleTff7b72.Td2a8ffapiTff7b72.Td2a8ffGradleExceptionTff7b72(Ta5d6ff"Missing vendor wheel directory at ${vendorWheelDir}"Tff7b72)
Tff7b72}
Te6edf3options Ta5d6ff"--find-links"Tff7b72, Te6edf3vendorWheelDirTff7b72.Td2a8ffabsolutePath
Te6edf3install Ta5d6ff"packaging>=23"
Te6edf3install Ta5d6ff"aiohttp==3.13.5"
Te6edf3install Ta5d6ff"rns>=1.2.1"
Te6edf3install Ta5d6ff"bleak==3.0.1"
Te6edf3install Ta5d6ff"lxmf>=0.9.4"
Te6edf3install Ta5d6ff"numpy==1.26.2"
Te6edf3install Ta5d6ff"chaquopy-libcodec2==1.2.0"
Te6edf3install Ta5d6ff"pycodec2==4.1.1"
Te6edf3install Ta5d6ff"miniaudio==1.70"
Tff7b72if Tff7b72(Tff7b72!Te6edf3lxstPatchedWheelTff7b72.Td2a8ffexistsTff7b72(Tff7b72)Tff7b72) Tff7b72{
Tff7b72throw Tff7b72new Te6edf3orgTff7b72.Td2a8ffgradleTff7b72.Td2a8ffapiTff7b72.Td2a8ffGradleExceptionTff7b72(Ta5d6ff"Missing patched LXST wheel at ${lxstPatchedWheel}"Tff7b72)
Tff7b72}
Te6edf3install Te6edf3lxstPatchedWheelTff7b72.Td2a8ffabsolutePath
Te6edf3install Ta5d6ff"psutil>=7.2.2"
Te6edf3install Ta5d6ff"websockets>=16.0"
Te6edf3install Ta5d6ff"bcrypt==3.1.7"
Te6edf3install Ta5d6ff"aiohttp-session>=2.12.1,<3.0.0"
Te6edf3install Ta5d6ff"cryptography==46.0.7"
Te6edf3install Ta5d6ff"pycparser>=3.0"
Te6edf3install Ta5d6ff"pyserial>=3.5"
Te6edf3install Ta5d6ff"usbserial4a==0.4.0"
Te6edf3install Ta5d6ff"jaraco.context>=6.1.1"
Te6edf3install Ta5d6ff"ply>=3.11,<4.0"
Tff7b72}
Tff7b72}
Tff7b72}

Te6edf3dependencies Tff7b72{
Te6edf3implementation Ta5d6ff'androidx.core:core:1.16.0'
Te6edf3implementation Ta5d6ff'com.squareup.okhttp3:okhttp:4.12.0'
Te6edf3implementation Ta5d6ff'androidx.appcompat:appcompat:1.7.1'
Te6edf3implementation Ta5d6ff'com.google.android.material:material:1.13.0'
Te6edf3implementation Ta5d6ff'androidx.constraintlayout:constraintlayout:2.2.1'
Te6edf3implementation Ta5d6ff'androidx.webkit:webkit:1.14.0'
Te6edf3implementation Ta5d6ff'androidx.lifecycle:lifecycle-runtime-ktx:2.8.7'
Te6edf3testImplementation Ta5d6ff'junit:junit:4.13.2'
Te6edf3androidTestImplementation Ta5d6ff'androidx.test.ext:junit:1.2.1'
Te6edf3androidTestImplementation Ta5d6ff'androidx.test.espresso:espresso-core:3.6.1'
Tff7b72}


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────